namespace OasisCiq.Xal
{
    using System.Collections.Generic;
    using System.Collections.Specialized;
    using CommonTypes;
    using External;
    using XS;

    /// <summary>
    /// Final mail delivery point where the mail is dropped off for recipients to pick them
    /// up directly. E.g. POBox, Private Bag, pigeon hole, free mail numbers, etc.
    /// </summary>
    public class PostalDeliveryPoint : IDataQualityGroup, IExtendedAttributes
    {
        /// <summary>
        /// Free text or structured description of a postal delivery point.
        /// at least one element required
        /// </summary>
        public virtual ICollection<IdentifierType> Identifiers { get; set; }

        public virtual PostalDeliveryPointTypeList Type { get; set; }

        public virtual DataQualityTypeList DataQualityType { get; set; }

        public virtual XSDateTime ValidFrom { get; set; }

        public virtual XSDateTime ValidTo { get; set; }

        public virtual NameValueCollection ExtendedAttributes { get; set; }
    }
}